<?php

/**
 * PackageStatus.
 *
 * PHP version 8.3
 *
 * @category Class
 *
 * @author   OpenAPI Generator team
 *
 * @see     https://openapi-generator.tech
 */

/**
 * Selling Partner API for Easy Ship.
 *
 * Use the Selling Partner API for Easy Ship to build applications for sellers to manage and ship Amazon Easy Ship orders. With this API, you can get available time slots, schedule and reschedule Easy Ship orders, and print shipping labels, invoices, and warranties. To review the differences in Easy Ship operations by marketplace, refer to [Marketplace support](https://developer-docs.amazon.com/sp-api/docs/easyship-api-v2022-03-23-use-case-guide#marketplace-support).
 *
 * The version of the OpenAPI document: 2022-03-23
 * Generated by: https://openapi-generator.tech
 * Generator version: 7.9.0
 */

/**
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

namespace SpApi\Model\easyship\v2022_03_23;

/**
 * PackageStatus Class Doc Comment.
 *
 * @category Class
 *
 * @description The status of the package.
 *
 * @author   OpenAPI Generator team
 *
 * @see     https://openapi-generator.tech
 */
class PackageStatus
{
    /**
     * Possible values of this enum.
     */
    public const READY_FOR_PICKUP = 'ReadyForPickup';

    public const PICKED_UP = 'PickedUp';

    public const AT_ORIGIN_FC = 'AtOriginFC';

    public const AT_DESTINATION_FC = 'AtDestinationFC';

    public const DELIVERED = 'Delivered';

    public const REJECTED = 'Rejected';

    public const UNDELIVERABLE = 'Undeliverable';

    public const RETURNED_TO_SELLER = 'ReturnedToSeller';

    public const LOST_IN_TRANSIT = 'LostInTransit';

    public const LABEL_CANCELED = 'LabelCanceled';

    public const DAMAGED_IN_TRANSIT = 'DamagedInTransit';

    public const OUT_FOR_DELIVERY = 'OutForDelivery';

    /**
     * Gets allowable values of the enum.
     *
     * @return string[]
     */
    public static function getAllowableEnumValues(): array
    {
        return [
            self::READY_FOR_PICKUP,
            self::PICKED_UP,
            self::AT_ORIGIN_FC,
            self::AT_DESTINATION_FC,
            self::DELIVERED,
            self::REJECTED,
            self::UNDELIVERABLE,
            self::RETURNED_TO_SELLER,
            self::LOST_IN_TRANSIT,
            self::LABEL_CANCELED,
            self::DAMAGED_IN_TRANSIT,
            self::OUT_FOR_DELIVERY,
        ];
    }
}
